package com.sailing.xjpb.ipaas.client.core;

import com.sailing.xjpb.ipaas.client.entity.dto.SipOrganizationDTO;
import com.sailing.xjpb.ipaas.client.entity.dto.SipRoleDTO;
import com.sailing.xjpb.ipaas.client.entity.dto.SipUserCurrentInfoDTO;

import java.util.List;

/**
 * token获取用户信息服务
 *
 * @author YW
 */
public interface IpaasClientService {

    /**
     * 检测token是否合法
     *
     * @param authorization token信息
     */
    boolean checkToken(String authorization);

    /**
     * 获取当前用户信息
     *
     * @param authorization token信息
     */
    SipUserCurrentInfoDTO getSipUserCurrentInfo(String authorization);

    /**
     * 根据用户名获取所有角色
     *
     * @param authorization token信息
     * @param userName      用户名
     */
    List<SipRoleDTO> listRoles(String authorization, String userName);

    /**
     * 根据组织机构ID获取组织机构信息
     *
     * @param orgId 组织机构ID
     */
    SipOrganizationDTO getOrgById(String orgId);

}
